// ----- #pragma endregion ---------------------------------------------------- Bitmap^ bitmapa; int kulaX,kulaY,kulaR; bool WTrakciePrzesuwania; // ----- Form1_Load() --------------------------------------------------------- bitmapa = gcnew Bitmap(1200, 800, Imaging::PixelFormat::Format24bppRgb); Graphics^ grafBMP = Graphics::FromImage(bitmapa); grafBMP->Clear(Color::White); WTrakciePrzesuwania=false; kulaR=10; // ----- pictureBox1_MouseDown() ---------------------------------------------- if(e->Button==Windows::Forms::MouseButtons::Left) { int px=e->X-kulaX; int py=e->Y-kulaY; if(px*px+py*py<=kulaR*kulaR) WTrakciePrzesuwania=true; } // ----- pictureBox1_MouseMove() ---------------------------------------------- if(e->Button==Windows::Forms::MouseButtons::Left && WTrakciePrzesuwania==true) { kulaX=e->X; kulaY=e->Y; pictureBox1->Invalidate(); } else WTrakciePrzesuwania=false; // ----- pictureBox1_Paint() -------------------------------------------------- static int lastMX=0,lastMY=0; Graphics^ grafBMP = Graphics::FromImage(bitmapa); grafBMP->DrawLine(Pens::Black, lastMX, lastMY, kulaX, kulaY); Graphics^ grafika = e->Graphics; grafika->DrawImage(bitmapa,0,0); grafika->FillEllipse(Brushes::Green, kulaX-kulaR,kulaY-kulaR,2*kulaR,2*kulaR); lastMX=kulaX; lastMY=kulaY;